package com.tmanager.persistence.dao;

import java.util.List;

import com.google.inject.ImplementedBy;
import com.tmanager.persistence.entity.User;


/**
 * @author Paul A. Shmarev
 */
@ImplementedBy(UserDAOImpl.class)
public interface UserDAO extends DAO<User> {

   /* User authenticate(String email, String password) throws UserManagementException;
    
    List<User> getAll(int offset, int length) throws UserManagementException;
    */
    User getUserByEmail(String userEmail);
    /*
    User getUserByUserId(Long UserId) throws UserManagementException;
    
    List<String> getRoles(Long userId) throws UserManagementException;
    
    boolean hasRole(String roleName, String UserId) throws UserManagementException;
    
    void revokeRole(String roleName, User user) throws UserManagementException;
    
    void grantRole(UserRoles roleName, User user) throws UserManagementException ;*/
}
